package com.shop.common.enums;

import java.util.Objects;

/**
 * 文件类型
 */
public enum FileTypeEnum {

    IMAGE("image", "图片", "images"),
    VIDEO("video", "视频", "videos"),
    VOICE("audio", "音频", "voices");


    /**
     * 构造方法
     */
    private final String type;
    private final String name;
    private final String dir;
    FileTypeEnum(String type, String name, String dir) {
        this.type = type;
        this.name = name;
        this.dir = dir;
    }

    /**
     * 获取类型
     *
     * @author dragondean
     * @return String
     */
    public String getType() {
        return this.type;
    }

    /**
     * 获取类型名称
     *
     * @author fzr
     * @return String
     */
    public String getName() {
        return this.name;
    }

    /**
     * 根据类型获取名称
     *
     * @author fzr
     * @param type 类型
     * @return String
     */
    public static String getNameByType(String type){
        for(FileTypeEnum enumItem: FileTypeEnum.values()) {
            if (Objects.equals(enumItem.getType(), type)) {
                return enumItem.getName();
            }
        }
        return null;
    }

    /**
     * 根据类型获取目录
     * @param type 类型
     */
    public static String getDirByType(String type) {
        for (FileTypeEnum enumItem : FileTypeEnum.values()) {
            if (Objects.equals(enumItem.getType(), type)) {
                return enumItem.dir;
            }
        }
        return null;
    }

}
